1. Field of the Invention
This invention relates to a method and apparatus for interpreting information and particularly for information relating to a communications network.
2. Description of the Prior Art
In the telecommunications field, large amounts of data are available, for example about customer behaviour and telephone usage. This data contains potentially useful information for many purposes such as detection of fraud, marketing, billing, maintenance planning and fault detection. However, the data must first be analysed in order to extract features that can easily be used for a given task. This task of extracting useful features from the data is often difficult because the user does not know which type of features to look for. For example, the information may be in the form of call detail records (CDRs). A CDR is a log of an individual telephone call which contains information such as the length of the telephone call, the customer account number, the type of call and many other pieces of information. Over a given time period many CDRs will be recorded, each containing many different pieces of information. When faced with this mass of information it can be difficult to know what features to extract for a particular problem.
One possibility is to use a data classifier which searches for a set of classes and class descriptions that are most likely to explain a given data set. Several types of such data classifiers are known. For example, Bayesian classifiers, neural network classifiers and rule based classifiers. For a given task, a classifier is typically trained on a series of examples for the particular task. After the classifier has been trained then new examples are presented to it for classification. The classifier can be trained either using a supervised method or an unsupervised method. In a supervised method the training examples that are used are known examples. That is the user knows which classes these training examples should be classified into and this information is also provided to the classifier during the training phase. For unsupervised training, there is no information about the desired classes for the training examples.
One problem is that the output of classifiers is often difficult to interpret. This is especially the case when unsupervised training has been used. The classifier output specifies which of a certain number of classes each input has been placed into. The user is given no explanation of what the classes mean in terms of the particular task or problem domain. Neither is the user provided with any information about why a particular input has been classified in the way that it has.
Previously, users have needed to carry out complex analyses of the classifier in order to obtain these kinds of explanations. Known examples can be input to the classifier and the outputs compared with the expected outputs. However, in order to do this known examples must be available and this is often not the case. Even when known examples can be obtained this is often a lengthy and expensive procedure.
A further problem is that because these kinds of explanations are not available the user""s confidence in the system is reduced. This means that the user is less likely to run the system, thus reducing the value of such a system. Also, errors and mistakes are hard to detect. For example, if erroneous data is entered by mistake a resulting error in the output could easily go unchecked. Similarly, if the training examples were not representative of the example population for the particular task then errors would be produced that would be hard to find.
It is accordingly an object of the present invention to provide an apparatus and method for interpreting information relating to a communications network which overcomes or at least mitigates one or more of the problems noted above.
According to a first aspect of the present invention there is provided a method of processing data relating to a plurality of examples using a data classifier arranged to classify input data into one of a number of classes, and a rule inducer, comprising the steps of:
(i) inputting a series of inputs to the data classifier so as to obtain a series of corresponding outputs;
(ii) inputting said series of outputs and at least some of said series of inputs to the rule inducer so as to obtain a series of rules which describe relationships between the series of inputs to the data classifier and the series of corresponding outputs from the data classifier. This provides the advantage that the rules can be used to provide an explanation for the user about how the classification is performed. Also, the rules can be used together with other information about the problem domain or task to help the user determine a xe2x80x9cmeaningxe2x80x9d for each of the classes. Advantageously, the user""s confidence in the system is increased and errors in the system can more easily be detected and corrected.
Preferably, the data classifier is unsupervised. The output of an unsupervised classification system is especially difficult to interpret. Advantageously, the rules produced according to the invention can be used to help the user determine a xe2x80x9cmeaningxe2x80x9d for the output of the unsupervised classifier.
Preferably, the method further comprises the step of transforming the series of rules into a format such that the formatted rules can be used as a data classifier. This provides the advantage that a rule based classifier can easily be created without the need for the user to determine the rules directly from the data set or other data source.
Preferably the method further comprises the step of incorporating the rules into a case-based reasoning system. This provides the advantage that a case-base reasoning system can easily be created without the need for the user to determine the rules directly from the data set or other data source. Advantageously the case-based reasoning system is able to learn from new examples.
According to a second aspect of the present invention there is provided a method of processing data relating to a communications network using a rule extractor and a neural network data classifier comprising the steps of:
(i) inputting a series of training data inputs to the neural network and training the neural network using this series of training data so as to obtain a series of output values corresponding to the training data inputs;
(ii) inputting information about the configuration of the trained neural network to the rule extractor so as to obtain a series of rules which describe relationships between the series of training data inputs and the series of output values. This provides the advantage that the rules can be used to provide an explanation for the user about how the classification is performed. Also, the rules can be used together with other information about the problem domain or task to help the user determine a xe2x80x9cmeaningxe2x80x9d for each of the classes. Advantageously, the user""s confidence in the system is increased and errors in the system can more easily be detected and corrected.
According to another aspect of the present invention there is provided a computer system for processing data relating to a communications network comprising:
a data classifier arranged to classify input data into one of a number of classes;
a rule inducer;
a first input arranged to accept a series of inputs to the data classifier;
a first output arranged to provide a series of corresponding outputs from the data classifier;
a second input arranged to accept said series of outputs and at least some of said series of inputs to the rule generator; and
a second output arranged to output from the rule generator a set of rules which describe relationships between the series of inputs to the data classifier and the series of corresponding outputs from the data classifier. This provides the advantage that the rules can be used to provide an explanation for the user about how the classification is performed. Also, the rules can be used together with other information about the problem domain or task to help the user determine a xe2x80x9cmeaningxe2x80x9d for each of the classes. Advantageously, the user""s confidence in the system is increased and errors in the system can more easily be detected and corrected.
According to another aspect of the present invention there is provided a computer system for processing data relating to a telecommunications network comprising:
(i) a rule extractor;
(ii) a neural network data classifier;
(iii) a first input arranged to accept a series of training data inputs to the neural network;
(iv) a processor arranged to train the neural network using the series of training data inputs so as to produce a series of output values corresponding to the training data inputs; and
(v) a second input arranged to accept information about the configuration of the trained neural network to the rule extractor so as to produce a series of rules which describe relationships between the series of training data inputs and the series of output values. This provides the advantage that the rules can be used to provide an explanation for the user about how the classification is performed. Also, the rules can be used together with other information about the problem domain or task to help the user determine a xe2x80x9cmeaningxe2x80x9d for each of the classes. Advantageously, the user""s confidence in the system is increased and errors in the system can more easily be detected and corrected.